Speeding up Arithmetic Coding using Greedy Re-normalization
نویسندگان
چکیده
A typical adaptive arithmetic coder consists of three steps: range calculation, renormalization, and probability model updating. A method, called greedy re-normalization, is given in this paper that significantly reduces the computational complexity of the renormalization step of arithmetic coding. This is achieved by reducing both the number of re-normalizations required to encode a sequence and the number of operations within each re-normalization. Following the notations in [1], the internal state of an arithmetic coder is represented by an interval [L,L+R) where L is the base of the interval and R the length, and both L and R are b-bit integers. To reduce the number of operations within each re-normalization, the greedy re-normalization method generates as many code bits as possible from an interval and updates the interval correspondingly; moreover, both of the tasks are done at one time without using a loop. This is one of the differences between the greedy re-normalization method and the conventional method in [1] where a loop is used to generate code bits and update an interval. Let m(L,R) represent the maximal number of code bits with known polarities that can be generated from [L,L + R) and k(L,R) the maximum number of outstanding code bits (see [1] for the meaning of this term). We show that m(L,R) = b−1− log t , and k(L,R) = log t − log(2 log t − t) if R = 1 and log(2 log t − t) ≥ logR , and log t − logR otherwise. (log stands for the logarithm with base 2.) The maximal number of bits that can be shifted out of L and R is given by m(L,R) + k(L,R). To reduce the number of re-normalizations in encoding a sequence, the proposed method adopts a dynamic re-normalization criterion: Rpmin < 1, where pmin stands for the probability of the least probable symbol in the source alphabet. Since the value pmin may change from time to time, this criterion is a dynamic one. This is another difference between the proposed method and the conventional method where a fixed re-normalization threshold is usually used. Experimental results show that the proposed greedy re-normalization method indeed improves the speed of arithmetic coding. For example, by simply replacing the re-normalization procedure in the binary arithmetic coder in [1] with the proposed greedy re-normalization, more than 20% gain in coding speed is observed in experiments. By combining the greedy re-normalization method with some ideas of the QM-Coder, about 30% average gain over the QM-coder is observed for binary i.i.d. sources with the probability of the less probable symbol ranging from 0.01 to 0.45. Compression performance is not compromised in either of the two cases. The greedy re-normalization method can also be used in multi-symbol arithmetic coding.
منابع مشابه
Correction to "lossless, near-lossless, and refinement coding of bilevel images"
We present general and unified algorithms for lossy/lossless coding of bilevel images. The compression is realized by applying arithmetic coding to conditional probabilities. As in the current JBIG standard the conditioning may be specified by a template. For better compression, the more general free tree may be used. Loss may be introduced in a preprocess on the encoding side to increase compr...
متن کاملSpeeding up Dirac’s Entropy Coder
The Dirac codec is a new prototype video coding algorithm from BBC R&D based on wavelet technology. Compression-wise the algorithm is broadly competitive with the state-of-the-art video codecs but computational-wise the execution time is currently poor. One of the large bottlenecks is the arithmetic coder. Hence we took this part under investigation and replaced it with a faster variant, the M-...
متن کاملGreedy Randomized Adaptive Search Procedures
GRASP is an iterative multi-start metaheuristic for solving difficult combinatorial problems. Each GRASP iteration consists of two phases: a greedy adaptive randomized construction phase and a local search phase. Starting from the feasible solution built during the greedy adaptive randomized construction phase, the local search explores its neighborhood until a local optimum is found. The best ...
متن کاملInterval Arithmetic: an Efficient Implementation and an Application to Computational Geometry
We discuss interval techniques for speeding up the exact evaluation of geometric predicates and describe a C++ implementation of interval arithmetic that is strongly innuenced by the rounding modes of the widely used IEEE 754 standard. Using this approach we engineer an eecient oating point lter for the computation of geometric predicates. We validate our approach experimentally, comparing it w...
متن کاملArchitecture for Efficient Implementation of the YK Lossless Data Compression Algorithm
The YK (Yang-Kieffer) algorithm [1,2] is a sequential lossless data compression built upon an efficient greedy grammar transform. This grammar transform constructs a sequence of irreducible context-free grammars from which the original data sequence can be recovered incrementally. The transform sequentially parses the original data into nonoverlapping variable-length phrases, and updates the gr...
متن کامل